
  
#ifndef _BSP__LED_H
#define _BSP__LED_H

#include "stm32f4xx_hal.h"

#define LED_Red_On()        HAL_GPIO_WritePin(LED_RED_GPIO_Port, LED_RED_Pin, GPIO_PIN_RESET)
#define LED_Red_Off()       HAL_GPIO_WritePin(LED_RED_GPIO_Port, LED_RED_Pin, GPIO_PIN_SET)
#define LED_Red_Toggle()    HAL_GPIO_TogglePin(LED_RED_GPIO_Port, LED_RED_Pin)
#define LED_Green_On()      HAL_GPIO_WritePin(LED_GREEN_GPIO_Port, LED_GREEN_Pin, GPIO_PIN_RESET)
#define LED_Green_Off()     HAL_GPIO_WritePin(LED_GREEN_GPIO_Port, LED_GREEN_Pin, GPIO_PIN_SET)
#define LED_Green_Toggle()  HAL_GPIO_TogglePin(LED_GREEN_GPIO_Port, LED_GREEN_Pin)

#define LED_1_Toggle()    HAL_GPIO_TogglePin(GPIOG, GPIO_PIN_1)
#define LED_2_Toggle()    HAL_GPIO_TogglePin(GPIOG, GPIO_PIN_2)
#define LED_3_Toggle()    HAL_GPIO_TogglePin(GPIOG, GPIO_PIN_3)
#define LED_4_Toggle()    HAL_GPIO_TogglePin(GPIOG, GPIO_PIN_4)
#define LED_5_Toggle()    HAL_GPIO_TogglePin(GPIOG, GPIO_PIN_5)
#define LED_6_Toggle()    HAL_GPIO_TogglePin(GPIOG, GPIO_PIN_6)
#define LED_7_Toggle()    HAL_GPIO_TogglePin(GPIOG, GPIO_PIN_7)
#define LED_8_Toggle()    HAL_GPIO_TogglePin(GPIOG, GPIO_PIN_8)

#define LED_1_On()        HAL_GPIO_WritePin(GPIOG, GPIO_PIN_1, GPIO_PIN_RESET)
#define LED_2_On()        HAL_GPIO_WritePin(GPIOG, GPIO_PIN_2, GPIO_PIN_RESET)
#define LED_3_On()        HAL_GPIO_WritePin(GPIOG, GPIO_PIN_3, GPIO_PIN_RESET)
#define LED_4_On()        HAL_GPIO_WritePin(GPIOG, GPIO_PIN_4, GPIO_PIN_RESET)
#define LED_5_On()        HAL_GPIO_WritePin(GPIOG, GPIO_PIN_5, GPIO_PIN_RESET)
#define LED_6_On()        HAL_GPIO_WritePin(GPIOG, GPIO_PIN_6, GPIO_PIN_RESET)
#define LED_7_On()        HAL_GPIO_WritePin(GPIOG, GPIO_PIN_7, GPIO_PIN_RESET)
#define LED_8_On()        HAL_GPIO_WritePin(GPIOG, GPIO_PIN_8, GPIO_PIN_RESET)

#define LED_1_Off()       HAL_GPIO_WritePin(GPIOG, GPIO_PIN_1, GPIO_PIN_SET)
#define LED_2_Off()       HAL_GPIO_WritePin(GPIOG, GPIO_PIN_2, GPIO_PIN_SET)
#define LED_3_Off()       HAL_GPIO_WritePin(GPIOG, GPIO_PIN_3, GPIO_PIN_SET)
#define LED_4_Off()       HAL_GPIO_WritePin(GPIOG, GPIO_PIN_4, GPIO_PIN_SET)
#define LED_5_Off()       HAL_GPIO_WritePin(GPIOG, GPIO_PIN_5, GPIO_PIN_SET)
#define LED_6_Off()       HAL_GPIO_WritePin(GPIOG, GPIO_PIN_6, GPIO_PIN_SET)
#define LED_7_Off()       HAL_GPIO_WritePin(GPIOG, GPIO_PIN_7, GPIO_PIN_SET)
#define LED_8_Off()       HAL_GPIO_WritePin(GPIOG, GPIO_PIN_8, GPIO_PIN_SET)

#define KEY_PRESS          (HAL_GPIO_ReadPin(GPIOD, GPIO_PIN_10))?0x00:0x01

#endif

